package com.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * AccpVote entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "ACCP_VOTE", schema = "ACCP")
public class AccpVote implements java.io.Serializable {

	// Fields

	private Integer vid;
	private AccpSubject accpSubject;
	private AccpStudent accpStudent;
	private AccpTeacher accpTeacher;
	private AccpSubjectitems accpSubjectitems;
	private Integer levels;

	// Constructors

	/** default constructor */
	public AccpVote() {
	}

	/** minimal constructor */
	public AccpVote(Integer vid) {
		this.vid = vid;
	}

	/** full constructor */
	public AccpVote(Integer vid, AccpSubject accpSubject,
			AccpStudent accpStudent, AccpTeacher accpTeacher,
			AccpSubjectitems accpSubjectitems, Integer levels) {
		this.vid = vid;
		this.accpSubject = accpSubject;
		this.accpStudent = accpStudent;
		this.accpTeacher = accpTeacher;
		this.accpSubjectitems = accpSubjectitems;
		this.levels = levels;
	}

	// Property accessors
	@Id
	@Column(name = "VID", unique = true, nullable = false, precision = 8, scale = 0)
	public Integer getVid() {
		return this.vid;
	}

	public void setVid(Integer vid) {
		this.vid = vid;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "SUBJECT_ID")
	public AccpSubject getAccpSubject() {
		return this.accpSubject;
	}

	public void setAccpSubject(AccpSubject accpSubject) {
		this.accpSubject = accpSubject;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "STUDENT_ID")
	public AccpStudent getAccpStudent() {
		return this.accpStudent;
	}

	public void setAccpStudent(AccpStudent accpStudent) {
		this.accpStudent = accpStudent;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "TEACHER_ID")
	public AccpTeacher getAccpTeacher() {
		return this.accpTeacher;
	}

	public void setAccpTeacher(AccpTeacher accpTeacher) {
		this.accpTeacher = accpTeacher;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "SUBJECTITEM_ID")
	public AccpSubjectitems getAccpSubjectitems() {
		return this.accpSubjectitems;
	}

	public void setAccpSubjectitems(AccpSubjectitems accpSubjectitems) {
		this.accpSubjectitems = accpSubjectitems;
	}

	@Column(name = "LEVELS", precision = 8, scale = 0)
	public Integer getLevels() {
		return this.levels;
	}

	public void setLevels(Integer levels) {
		this.levels = levels;
	}

}